import { getDetail } from "@/services";

// 这是首页上的数据
export interface ISkillLabel {
  id: string;
  name: string;
  parentId: string;
  children?: any;
}

export interface ISkillListQuery {
  isAsc: string;
  pageNum: number;
  pageSize: number;
  searchTitle?: string;
  majorId?: string;
  status?: number;
  isMyInfo: boolean;
}
// 登录页面的数据
export interface ILoginData {
  code: string
  key: string
  password: string,
  username: string,
  uuid?: string
}



export interface ISkillAddItem {
  majorId: string;
  name: string;
  stationVersion: number;
  userName: string;
  stationVersionId: string;
  majorName: string;
  stationLevelList: StationLevelList[];
  describes?: string;
  salaryList?: number[];
  stationTask?: string;
}

interface StationLevelList {
  describes: string;
  salaryList: number[];
  stationLevel: number;
  stationTask: string;
  level_name: string;
  disabled: boolean;
}


// 这是新增页面的数据
export interface ISkillList {
  interviewId: any;
  stationName: any;
  stationId: string;
  stationVersionId: string;
  name: string;
  majorId?: string;
  userId: string;
  userName: string;
  status: number;
  skillNum?: string;
  majorName?: string;
  stationVersion: number;
  stationLevelList?: any;
  labelTreeList?: any;
  skillList?: any;
  createTime: string;
}



export interface IInterViewQuery {
  isAsc: string;
  pageNum: number;
  pageSize: number;
  searchTitle?: string;
  majorId?: string;
  status?: number;
  isMyInfo: boolean;
}

export interface IInterViewList {
  interviewId: string;
  stationId?: any;
  companyName: string;
  interviewTime: string;
  intervierManagement: string;
  majorId: string;
  commitPeople: string;
  status: number;
  issoundrecord: number;
  stationName: string;
  majorName: string;
  commitName: string;
  duration?: any;
  site?: any;
  record?: any;
  shield: number;
  askAndanswerList?: any;
  soundrecordList?: any;
}


export interface ISkillDescriptionListItem {
  key: string;
  id: string;
  label: string;
  parentId: string;
  children?: any;
  content?: any;
}

interface Params {
  [key: string]: any
}

export interface IStationSkillDetail {
  searchValue?: any;
  createBy?: any;
  createTime?: any;
  updateBy?: any;
  updateTime?: any;
  remark?: any;
  params: Params;
  id: string;
  skillName: string;
  stationId: string;
  stationVersionId: string;
  parentId: string;
  levelType: number;
  masterRequired: number;
  abilityStandard?: any;
  score?: any;
  scoreId?: any;
}

// 这是实训计划管理护具
export interface planList {
  searchValue?: null;
  createBy?: null;
  createTime?: null;
  updateBy?: null;
  updateTime?: null;
  remark?: null;
  params: Params;
  id: string;
  classname: string;
  collegeId?: null;
  majorId?: null;
}
// 实训筛选传参列表
export interface Plan {
  isAsc: string;
  pageNum: number;
  pageSize: number;
  searchTitle?: string;
  majorId?: string;
  status?: number;
  isMyInfo: boolean;
}

interface Params {
}

export interface palnsList {
  classId?: string,
  searchName?: string
  ifFinished: number
  pageNum: number
  pageSize: number
}
//问答首页列表类型
export interface types {
  name: string,
  type: string | number
}
export interface typeList {
  answerId: string;
  proId?: string;
  taskId?: string;
  stepId?: any;
  qUserId: string;
  qUserName: string;
  qUserLevel?: any;
  createTime: string;
  taskName?: any;
  rUserId?: any;
  rUserName?: any;
  rUserLevel?: any;
  questionTitle: string;
  questionContent: string;
  answerCount: number;
  favorCount: number;
  unSupportCount: number;
  supportCount: number;
  type?: any;
  typeNum: string;
  replyTime: string;
  labels: string[];
  avatar?: any;
  replyContext?: any;
  shield: number;
  quality: number;
  replyId?: any;
  className?: any;
  authentication: number;
  collection: number;
  supportUp?: any;
  unsupportDown?: any;
  supportUpB: boolean;
  unsupportDownB: boolean;
  show: boolean;
  showContent: string;
}

////获取答辩专业的头部 --shi
export interface ISfenceList {
  name: string;
  active: boolean;
  id: string;
  parentId?: string;
  children?: any;
}

////获取答辩专业的表格接口
export interface ISfenceTable {
  pageNum: number
  pageSize: number
  searchTitle?: any
  defenceMjorId?: any
  defenceStatus?: any
}
////获取答辩专业的表格接口 item 类型
export interface ISfenceTableItem {
  defenceId: string;
  degenceName: string;
  defenceClassId?: any;
  defencePlanId?: any;
  defenceCreateTime: string;
  defenceEndTime: string;
  defenceStatus: number;
  defenceMajorId?: any;
  defenceAdress?: any;
  className?: string;
  planName?: string;
  majorName?: string;
  defenceAuthor: string;
  defenceScore?: any;
  defenceHistoryId?: any;
  taskProgressId?: any;
  scoreId?: any;
  defenceRater?: any;
  raterName?: any;
  defenceAuthorName: string;
  avaScore?: any;
  projectName?: any;
  groupName?: any;
  taskName?: any;
  defenceGroupInfoList?: any;
  defenceScoreList?: any;
}

export interface ISdefenceDetail {
  defenceId: string;
  degenceName: string;
  defenceClassId: string;
  defencePlanId: string;
  defenceCreateTime: string;
  defenceEndTime: string;
  defenceStatus: number;
  defenceMajorId: string;
  defenceAdress: string;
  className: string;
  planName: string;
  majorName: string;
  defenceAuthor: string;
  defenceScore?: any;
  defenceHistoryId?: any;
  taskProgressId?: any;
  scoreId?: any;
  defenceRater?: any;
  raterName?: any;
  defenceAuthorName: string;
  avaScore?: any;
  projectName?: any;
  groupName?: any;
  taskName?: any;
  defenceGroupInfoList?: any;
  defenceScoreList?: any;
}

// 这是项目页面的数据
export interface RootObject {
  value: string;
  label: string;
  parentId: string;
  children: Child[];
  content?: any;
  proId?: any;
}

interface Child {
  value: string;
  label: string;
  parentId?: any;
  children?: any;
  content?: any;
  proId?: any;
}
export interface RootObject2 {
  value: string;
  label: string;
  parentId: string;
  children?: any;
  content?: any;
  proId?: any;
}












// **************************获取面试列表的查询数据类型******************************************
// 面試記錄接口 
export interface IInterViewQuery {
  isAsc: string;
  pageNum: number;
  pageSize: number;
  searchTitle?: string;
  majorId?: string;
  status?: number;
  isMyInfo: boolean;
}
// 面试列表的数据类型
export interface IInterViewList {
  interviewId: string;
  stationId?: any;
  companyName: string;
  interviewTime: string;
  intervierManagement: string;
  majorId: string;
  commitPeople: string;
  status: number;
  issoundrecord: number;
  stationName: string;
  majorName: string;
  commitName: string;
  duration?: any;
  site?: any;
  record?: any;
  shield: number;
  askAndanswerList?: any;
  soundrecordList?: any;
}

// 面试排行榜
export interface IInterViewRankQuery {
  classId: string | undefined
}
// 面试题榜单
export interface IInterViewListQuery {
  classId: string | undefined
  pageNum: number,
  pageSize: number

}
// 面试记录榜单列表
export interface IInterViewLogkList {
  majorName?: string;
  commitName: string;
  count: number;
  rangking: number;
  className: string;
}
// 面试排行榜班级数据
export interface IRankList {
  skillName: string;
  stationId: string;
  stationVersionId: string;
  parentId: string;
  levelType: number;
  masterRequired: number;
  abilityStandard?: any;
  score?: any;
  scoreId?: any;
  id: any;
  classname: string;
}
//屏蔽
export interface IInterViewShield {
  interviewId: string;
  status: number
}
export interface IInterViewDetails {
  interviewId: string;
  stationId?: any;
  companyName: string;
  interviewTime: string;
  intervierManagement: string;
  majorId?: any;
  commitPeople?: any;
  status: number;
  issoundrecord: number;
  stationName: string;
  majorName: string;
  commitName: string;
  duration: string;
  site: string;
  record: string;
  shield: number;
  askAndanswerList: AskAndanswerList[];
  soundrecordList: SoundrecordList[];
}

interface SoundrecordList {
  name: string;
  url: string;
  suffix: string;
  soundId: string;
}

interface AskAndanswerList {
  defenceHistoryId?: any;
  taskProgressId?: any;
  question: string;
  answer?: string;
  answerList?: any;
  interviewId: string;
  meeting: number;
}
// **************************获取面试列表的查询数据类型******************************************



// 这是实训计划管理护具
export interface planList {
  searchValue?: null;
  createBy?: null;
  createTime?: null;
  updateBy?: null;
  updateTime?: null;
  remark?: null;
  params: Params;
  id: string;
  classname: string;
  collegeId?: null;
  majorId?: null;
}

// 实训筛选传参列表
export interface Plan {
  isAsc: string;
  pageNum: number;
  pageSize: number;
  searchTitle?: string;
  majorId?: string;
  status?: number;
  isMyInfo: boolean;
}
// 實訓計劃新增頁面接口

export interface addplan {
  flag: boolean | undefined;
  isfalse?: boolean;
  searchValue?: any;
  createBy: null;
  createTime: null;
  updateBy: null;
  updateTime: null;
  remark?: any;
  params: Params;
  id: string;
  username: string;
  classid: string;
  classname: string;
  userid: string;
  avatar: string;
}
// 获取面试列表的查询数据类型
// 實訓計劃頁面查詢的數據
export interface planLists {
  classId?: any;
  className: string;
  id: string;
  classid: string;
  planname: string;
  begintime: string;
  endtime: string;
  states: string;
  progress: string;
  countStus: number;
  countUncompleted: number;
  description: string;
  countCompleted?: any;
  surplusTime: string;
}



// 这是项目页面的数据_____zhang
export interface RootObject {
  value: string;
  label: string;
  parentId: string;
  children: Child[];
  content?: any;
  proId?: any;
}

interface Child {
  value: string;
  label: string;
  parentId?: any;
  children?: any;
  content?: any;
  proId?: any;
}
export interface RootObject2 {
  value: string;
  label: string;
  parentId: string;
  children?: any;
  content?: any;
  proId?: any;
}
export interface RootObject3 {
  searchValue?: any;
  createBy?: any;
  createTime: string;
  updateBy?: any;
  updateTime: string;
  remark?: any;
  params: Params;
  id: string;
  authorid: string;
  proname: string;
  prodescription: string;
  sxtype: string;
  stucount?: any;
  score?: any;
  publishtime?: any;
  status: string;
  subjecttime: string;
  favorcount?: any;
  pictureUrl?: any;
  richText?: any;
  newVersionId?: any;
  taskCount: number;
  trade: string;
  major: string;
  versionId: string;
  versionNum: string;
  showUrl: string;
  version: string;
}
interface Params {
  isAsc: string;
  pageNum: number;
  pageSize: number;
  sxtype: number;
  status: number;
  proName: string;
  newProjectList: number;
  specialtyTag?: string;
  industryTag?: string;
}


//=============实训进度============
//user信息
export interface IuserInfo {
  admin: boolean;
  avatar: string;
  createBy?: any;
  createTime?: any;
  delFlag?: any;
  dept: _0;
  ancestors?: any;
  children: any[];
  deptId: number;
  deptName: string;
  email: string;
  leader: string;
  orderNum: string;
  params: Params;
  parentId: number;
  parentName?: any;
  phone?: any;
  remark?: any;
  searchValue?: any;
  status: string;
  updateBy?: any;
  updateTime?: any;
  loginDate?: any;
  loginIp: string;
  majorName: string;
  nickName: string;
  phonenumber: string;
  postIds?: any;
  roleIds?: any;
  roles: any[];
  dataScope: string;
  deptIds?: any;
  flag: boolean;
  menuIds?: any;
  roleId: number;
  roleKey: string;
  roleName: string;
  roleSort: string;
  salt?: any;
  sex: string;
  userId: number;
  userName: string;
}
interface _0 {
  searchValue?: any;
  createBy?: any;
  createTime?: any;
  updateBy?: any;
  updateTime?: any;
  remark?: any;
}
//下拉数据
export interface ISelectData {
  begintime: string;
  classId?: any;
  className: string;
  classid: string;
  countCompleted?: any;
  countStus: number;
  countUncompleted: number;
  description: string;
  endtime: string;
  id: string;
  planname: string;
  progress: string;
  states: string;
  surplusTime?: any;
}
//小组数据
export interface IGroupData {
  beginTime?: any;
  begintime: string;
  className: string;
  classid: string;
  countCompleted?: any;
  countStus: number;
  countUncompleted: number;
  description: string;
  endTime?: any;
  endtime: string;
  id: string;
  list: IGroupDataList[];
  planname: string;
  progress: string;
  states: string;
  stuRank?: any;
}
interface IGroupDataList {
  classid?: any;
  finished: number;
  groupProgress: number;
  groupname: string;
  id: string;
  members: number;
  myProject: IMyProject[];
  stuList: any[];
  unfinished: number;
}
interface IMyProject {
  beginTime: string;
  endTime: string;
  length: string;
  proid: string;
  proname: string;
  sTaskList?: any;
  taskCompletedCount?: any;
  taskCompletedpProgress?: any;
  taskList: ITaskList[];
}
interface ITaskList {
  id: string;
  orderNum: string;
  proid: string;
  stage: string;
  stageNum?: any;
  subjectTime: string;
  taskDes?: any;
  taskName: string;
  type?: any;
}
export interface IClassRanklist {
  endtime?: any;
  groupid: string;
  groupname: string;
  members?: any;
  num: number;
  proList?: any;
  sProList?: any;
  studentUrl: string;
  taskCompletedCount?: any;
  taskCompletedpProgress: number;
  userid: string;
  username: string;
}
//===============问答排行榜=============
export interface IGetClassInfoData {
  classname: string;
  collegeId?: any;
  createBy?: any;
  createTime?: any;
  id: string;
  majorId?: any;
  params: Params;
  remark?: any;
  searchValue?: any;
  updateBy?: any;
  updateTime?: any;
}
export interface Idetailwen {
  numberQuestions: string,
  numberReplies: string,
  replyCount: string

}

export interface IRootObject {
  answerId: string;
  userId: string;
  userName: string;
  qUserLevel?: any;
  userPictureUrl: string;
  createTime: string;
  questionTitle: string;
  questionContent: string;
  answerCount: number;
  favorCount: number;
  unSupportCount: number;
  supportCount: number;
  labels: string[];
  andAnswerReplyInfos?: any;
  typeNum: string;
  pushTime: string;
  quality: number;
  shield: number;
  authentication: number;
  collection: number;
  andAnswerReplyInfoByTeachers?: any;
}
export interface IcommitList {
  replyId: string;
  parentId?: any;
  userId: string;
  userName: string;
  userLevel?: any;
  userPictureUrl: string;
  questionValue?: any;
  questionTitle?: any;
  questionId?: any;
  replyContext: string;
  isRight: number;
  rightId?: any;
  answerCount: number;
  unSupportCount: number;
  supportCount: number;
  replyTime: string;
  replyDate: string;
  shield: number;
  authentication: number;
  quality: number;
  selectRightReplyList?: any;
  questionIdList?: any;
}
export interface commitParams {
  questionContent: string;
  questionTitle: string;
  labels: any[];
  type: number;
  text1: string;
  text2: string;
}
export interface questionDetailList {
  isAsc: string
  pageNum: number
  pageSize: number
  type: string
  questionTitle?: string
  quality?: string|number
  authentication?: string|number
  searchVal?: string
}
export interface questionAnserItem {
  answerId: string;
  proId?: any;
  taskId?: any;
  stepId?: any;
  qUserId: string;
  qUserName: string;
  qUserLevel?: any;
  createTime: string;
  taskName?: any;
  rUserId?: any;
  rUserName?: any;
  rUserLevel?: any;
  questionTitle: string;
  questionContent: string;
  answerCount: number;
  favorCount?: any;
  unSupportCount: number;
  supportCount: number;
  type?: any;
  typeNum: string;
  replyTime: string;
  labels: any[];
  avatar?: any;
  replyContext?: any;
  shield: number;
  quality: number;
  replyId?: any;
  className?: any;
  authentication: number;
  collection: number;
  supportUp?: any;
  unsupportDown?: any;
  supportUpB: boolean;
  unsupportDownB: boolean;
}

export interface list {
  defenceId: string;
  degenceName: string;
  defenceClassId: string;
  defencePlanId: string;
  defenceCreateTime: string;
  defenceEndTime: string;
  defenceStatus: number;
  defenceMajorId: string;
  defenceAdress: string;
  className?: string;
  planName?: string;
  majorName?: string;
  defenceAuthor: string;
  defenceScore?: any;
  defenceHistoryId?: any;
  taskProgressId?: any;
  scoreId?: any;
  defenceRater?: any;
  raterName?: any;
  defenceAuthorName: string;
  avaScore?: any;
  projectName?: any;
  groupName?: any;
  taskName?: any;
  defenceGroupInfoList?: any;
  defenceScoreList?: any;
  classplan:string[],
  time:string[],
  majorList:string
}

export interface sss {
  classplan: string[],
  defenceAdress: string,
  defenceAuthorName: string,
  defenceClassId: string,
  defenceCreateTime:string,
  defenceEndTime: string,
  defenceId: string,
  defenceMajorId: string,
  defencePlanId: string,
  defenceScore: string,
  degenceName: string,
  majorList: string,
  time: string[],
}
//组成员
export interface RootGroup {
  id: string;
  classid?: any;
  groupname: string;
  members: number;
  finished: number;
  unfinished: number;
  stuList: StuList[];
  groupProgress: number;
  myProject: MyProject[];
}

interface MyProject {
  proid: string;
  proname: string;
  length: string;
  taskList: any[];
  sTaskList?: any;
  taskCompletedCount?: any;
  taskCompletedpProgress?: any;
  beginTime: string;
  endTime: string;
}

interface StuList {
  groupid: string;
  groupname: string;
  members: string;
  userid: string;
  username: string;
  endtime?: any;
  sProList: SProList[];
  proList?: any;
  taskCompletedCount: number;
  taskCompletedpProgress: number;
  studentUrl?: any;
  num: number;
}

interface SProList {
  proid: string;
  proname: string;
  length: string;
  taskList?: any;
  sTaskList: any[];
  taskCompletedCount?: any;
  taskCompletedpProgress?: any;
  beginTime: string;
  endTime: string;
}

 
export interface listItem {
  className: string;
  list: List[];
  stuRank?: any;
  id: string;
  classid: string;
  planname: string;
  begintime: string;
  endtime: string;
  states: string;
  progress: string;
  countStus: number;
  countUncompleted: number;
  countCompleted: string;
  description: string;
  beginTime?: any;
  endTime?: any;
}

interface List {
  id: string;
  classid?: any;
  groupname: string;
  members: number;
  finished: number;
  unfinished: number;
  stuList: StuList[];
  groupProgress: number;
  myProject: MyProject[];
}

interface MyProject {
  proid: string;
  proname: string;
  length: string;
  taskList: any[];
  sTaskList?: any;
  taskCompletedCount?: any;
  taskCompletedpProgress?: any;
  beginTime: string;
  endTime: string;
}

interface StuList {
  groupid: string;
  groupname: string;
  members: string;
  userid: string;
  username: string;
  endtime?: any;
  sProList: SProList[];
  proList?: any;
  taskCompletedCount: number;
  taskCompletedpProgress: number;
  studentUrl?: any;
  num: number;
}

interface SProList {
  proid: string;
  proname: string;
  length: string;
  taskList?: any;
  sTaskList: any[];
  taskCompletedCount?: any;
  taskCompletedpProgress?: any;
  beginTime: string;
  endTime: string;
export interface StatuendDetail{
  numberQuestions:string;
  numberReplies:string;
  replyCount:string;
}